home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / pc / 3DTOSHI2.ZIP / mpgfx / include / gfxfiles.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-03-23  |  2.5 KB  |  104 lines

  1.  
  2. // gfxfiles.h
  3. //
  4. // Copyright (c) 1995 by Toshiaki Tsuji, all rights reserved.
  5.  
  6. #ifndef __GFXFILES_H__
  7. #define __GFXFILES_H__
  8.  
  9. #include "stdgfx.h"
  10. #include "gfxdev.h"
  11. #include "gfxerror.h"
  12. #include <fcntl.h>
  13.  
  14. #if defined (__FORWINDOWS__)
  15.   #define FILEHANDLE FILE*
  16.   // For Seek
  17.   #define FROM_BEGIN   SEEK_SET
  18.   #define FROM_CURRENT SEEK_CUR
  19.   #define FROM_END     SEEK_END
  20.   // For Open
  21.   #define OPEN_READ    O_RDONLY
  22.   #define OPEN_WRITE   O_WRONLY
  23.   #define OPEN_RDWR    O_RDWR
  24.   #define OPEN_APPEND  O_APPEND
  25.   #define OPEN_BINARY  O_BINARY
  26.   #define OPEN_TEXT    O_TEXT
  27.   #define OPEN_CREATE  O_CREAT
  28.  
  29. #elif defined (__FOROS2__)
  30.   #define FILEHANDLE FILE*
  31.   // For Seek
  32.   #define FROM_BEGIN   SEEK_SET
  33.   #define FROM_CURRENT SEEK_CUR
  34.   #define FROM_END     SEEK_END
  35.   // For Open
  36.   #define OPEN_READ    O_RDONLY
  37.   #define OPEN_WRITE   O_WRONLY
  38.   #define OPEN_RDWR    O_RDWR
  39.   #define OPEN_APPEND  O_APPEND
  40.   #define OPEN_BINARY  O_BINARY
  41.   #define OPEN_TEXT    O_TEXT
  42.   #define OPEN_CREATE  O_CREAT
  43.  
  44. #elif defined (__FORDOS__)
  45.   #define FILEHANDLE FILE*
  46.   // For Seek
  47.   #define FROM_BEGIN   SEEK_SET
  48.   #define FROM_CURRENT SEEK_CUR
  49.   #define FROM_END     SEEK_END
  50.   // For Open
  51.   #define OPEN_READ    O_RDONLY
  52.   #define OPEN_WRITE   O_WRONLY
  53.   #define OPEN_RDWR    O_RDWR
  54.   #define OPEN_APPEND  O_APPEND
  55.   #define OPEN_BINARY  O_BINARY
  56.   #define OPEN_TEXT    O_TEXT
  57.   #define OPEN_CREATE  O_CREAT
  58.  
  59. #elif defined (__FORUNIX__)
  60.   #define FILEHANDLE FILE*
  61.   // For Seek
  62.   #define FROM_BEGIN   0
  63.   #define FROM_CURRENT 1
  64.   #define FROM_END     2
  65.   // For Open
  66.   #define O_BINARY  0
  67.   #define O_TEXT    0
  68.  
  69.   #define OPEN_READ    O_RDONLY
  70.   #define OPEN_WRITE   O_WRONLY
  71.   #define OPEN_RDWR    O_RDWR
  72.   #define OPEN_APPEND  O_APPEND
  73.   #define OPEN_BINARY  O_BINARY
  74.   #define OPEN_TEXT    O_TEXT
  75.   #define OPEN_CREATE  O_CREAT
  76. #endif
  77.  
  78. class FILESYSTEM : public DCIClass
  79.   {
  80.     public :
  81.       FILESYSTEM ();
  82.       virtual ~FILESYSTEM ();
  83.  
  84.       virtual BOOLEAN Init ();
  85.       virtual VOID DeInit ();
  86.  
  87.       FILEHANDLE Open ( STRING FileName, LONG Mode );
  88.       VOID Close ( FILEHANDLE f );
  89.       LONG Seek ( FILEHANDLE f, LONG Offset, LONG From );
  90.       BOOLEAN Read ( FILEHANDLE f, VOID* Buffer, LONG Size );
  91.       BOOLEAN Write ( FILEHANDLE f, VOID* Buffer, LONG Size );
  92.       INT  GetCh ( FILEHANDLE f );
  93.       VOID PutCh ( FILEHANDLE f, SHORT Ch );
  94.       LONG GetPos ( FILEHANDLE f );
  95.       LONG GetSize ( FILEHANDLE f );
  96.   }; // End of FILESYSTEM
  97.  
  98. extern FILESYSTEM File;
  99.  
  100. #endif
  101.  
  102.  
  103.  
  104.